/**
 * <copyright>
 * </copyright>
 *
 * $Id$
 */
package simsimframework;

import org.eclipse.emf.common.util.EList;

import org.eclipse.emf.ecore.EObject;

/**
 * <!-- begin-user-doc -->
 * A representation of the model object '<em><b>SIMULATOR</b></em>'.
 * <!-- end-user-doc -->
 *
 * <p>
 * The following features are supported:
 * <ul>
 *   <li>{@link simsimframework.SIMULATOR#getContains_networks <em>Contains networks</em>}</li>
 *   <li>{@link simsimframework.SIMULATOR#getContains_transitions <em>Contains transitions</em>}</li>
 *   <li>{@link simsimframework.SIMULATOR#getContains_gateway <em>Contains gateway</em>}</li>
 *   <li>{@link simsimframework.SIMULATOR#getContains_dataprocessings <em>Contains dataprocessings</em>}</li>
 *   <li>{@link simsimframework.SIMULATOR#getContains_charts <em>Contains charts</em>}</li>
 * </ul>
 * </p>
 *
 * @see simsimframework.SimsimframeworkPackage#getSIMULATOR()
 * @model annotation="gmf.diagram foo='bar'"
 * @generated
 */
public interface SIMULATOR extends EObject {
	/**
	 * Returns the value of the '<em><b>Contains networks</b></em>' containment reference list.
	 * The list contents are of type {@link simsimframework.Network}.
	 * <!-- begin-user-doc -->
	 * <p>
	 * If the meaning of the '<em>Contains networks</em>' containment reference list isn't clear,
	 * there really should be more of a description here...
	 * </p>
	 * <!-- end-user-doc -->
	 * @return the value of the '<em>Contains networks</em>' containment reference list.
	 * @see simsimframework.SimsimframeworkPackage#getSIMULATOR_Contains_networks()
	 * @model containment="true" required="true"
	 * @generated
	 */
	EList<Network> getContains_networks();

	/**
	 * Returns the value of the '<em><b>Contains transitions</b></em>' containment reference list.
	 * The list contents are of type {@link simsimframework.Transition}.
	 * <!-- begin-user-doc -->
	 * <p>
	 * If the meaning of the '<em>Contains transitions</em>' containment reference list isn't clear,
	 * there really should be more of a description here...
	 * </p>
	 * <!-- end-user-doc -->
	 * @return the value of the '<em>Contains transitions</em>' containment reference list.
	 * @see simsimframework.SimsimframeworkPackage#getSIMULATOR_Contains_transitions()
	 * @model containment="true"
	 * @generated
	 */
	EList<Transition> getContains_transitions();

	/**
	 * Returns the value of the '<em><b>Contains gateway</b></em>' containment reference list.
	 * The list contents are of type {@link simsimframework.Gateway}.
	 * <!-- begin-user-doc -->
	 * <p>
	 * If the meaning of the '<em>Contains gateway</em>' containment reference list isn't clear,
	 * there really should be more of a description here...
	 * </p>
	 * <!-- end-user-doc -->
	 * @return the value of the '<em>Contains gateway</em>' containment reference list.
	 * @see simsimframework.SimsimframeworkPackage#getSIMULATOR_Contains_gateway()
	 * @model containment="true" required="true"
	 * @generated
	 */
	EList<Gateway> getContains_gateway();

	/**
	 * Returns the value of the '<em><b>Contains dataprocessings</b></em>' containment reference list.
	 * The list contents are of type {@link simsimframework.Function}.
	 * <!-- begin-user-doc -->
	 * <p>
	 * If the meaning of the '<em>Contains dataprocessings</em>' containment reference list isn't clear,
	 * there really should be more of a description here...
	 * </p>
	 * <!-- end-user-doc -->
	 * @return the value of the '<em>Contains dataprocessings</em>' containment reference list.
	 * @see simsimframework.SimsimframeworkPackage#getSIMULATOR_Contains_dataprocessings()
	 * @model containment="true"
	 * @generated
	 */
	EList<Function> getContains_dataprocessings();

	/**
	 * Returns the value of the '<em><b>Contains charts</b></em>' containment reference list.
	 * The list contents are of type {@link simsimframework.Chart}.
	 * <!-- begin-user-doc -->
	 * <p>
	 * If the meaning of the '<em>Contains charts</em>' containment reference list isn't clear,
	 * there really should be more of a description here...
	 * </p>
	 * <!-- end-user-doc -->
	 * @return the value of the '<em>Contains charts</em>' containment reference list.
	 * @see simsimframework.SimsimframeworkPackage#getSIMULATOR_Contains_charts()
	 * @model containment="true"
	 * @generated
	 */
	EList<Chart> getContains_charts();

} // SIMULATOR
